home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / amigaoscd / amigapluscd / AP-Website / news / admin / phpmyadmin / left.php < prev    next >
PHP Script  |  2002-01-27  |  10KB  |  327 lines

  1. <?php
  2.  require("lib.inc.php");
  3. ?>
  4.  
  5. <html>
  6. <head>
  7. <title>phpMyAdmin</title>
  8.  
  9.  <script LANGUAGE="JavaScript" type="text/javascript">
  10.    <!--
  11.   // These scripts were originally found on cooltype.com.
  12.   // Modified 01/01/1999 by Tobias Ratschiller for linuxapps.com
  13.  
  14.   // Modified 7th June 2000 by Brian Birtles for Mozilla 5.0
  15.   // compatibility for phpMyAdmin
  16.  
  17.   document.onmouseover = doDocumentOnMouseOver ;
  18.   document.onmouseout = doDocumentOnMouseOut ;
  19.  
  20.   function doDocumentOnMouseOver() {
  21.     var eSrc = window.event.srcElement ;
  22.     if (eSrc.className == "item") {
  23.       window.event.srcElement.className = "highlight";
  24.     }
  25.   }
  26.  
  27.   function doDocumentOnMouseOut() {
  28.     var eSrc = window.event.srcElement ;
  29.     if (eSrc.className == "highlight") {
  30.       window.event.srcElement.className = "item";
  31.     }
  32.   }
  33.  
  34.  
  35. var bV=parseInt(navigator.appVersion);
  36. NS4=(document.layers) ? true : false;
  37. IE4=((document.all)&&(bV>=4)) ? true : false;
  38. DOM=(!document.layers && !document.all && bV>=4) ? true : false; // A hack to guess if the browser supports the DOM
  39. capable = (NS4 || IE4 || DOM) ? true : false;
  40.  
  41. function expandIt(){return}
  42. function expandAll(){return}
  43. //-->
  44. </script>
  45.  
  46. <script language="JavaScript1.2" type="text/javascript">
  47. <!--
  48. isExpanded = false;
  49.  
  50. function getIndex(el) {
  51.   ind = null;
  52.   for (i=0; i<document.layers.length; i++) {
  53.     whichEl = document.layers[i];
  54.     if (whichEl.id == el) {
  55.       ind = i;
  56.       break;
  57.     }
  58.   }
  59.   return ind;
  60. }
  61.  
  62. function arrange() {
  63.   nextY = document.layers[firstInd].pageY + document.layers[firstInd].document.height;
  64.   for (i=firstInd+1; i<document.layers.length; i++) {
  65.     whichEl = document.layers[i];
  66.     if (whichEl.visibility != "hide") {
  67.       whichEl.pageY = nextY;
  68.       nextY += whichEl.document.height;
  69.     }
  70.   }
  71. }
  72.  
  73. function initIt(){
  74.   if (NS4) {
  75.     for (i=0; i<document.layers.length; i++) {
  76.       whichEl = document.layers[i];
  77.       if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide";
  78.     }
  79.     arrange();
  80.   } else if(IE4) {
  81.     tempColl = document.all.tags("DIV");
  82.     for (i=0; i<tempColl.length; i++) {
  83.       if (tempColl(i).className == "child") tempColl(i).style.display = "none";
  84.     }
  85.   } else if(DOM) {
  86.     tempColl = document.getElementsByTagName("DIV");
  87.     for (i=0; i<tempColl.length; i++) {
  88.       if (tempColl(i).className == "child") tempColl(i).style.visibility = "hidden";
  89.     }
  90.   }
  91. }
  92.  
  93. function expandIt(el) {
  94.   if (!capable) return;
  95.   if (IE4) {
  96.     expandIE(el);
  97.   } else if(NS4) {
  98.     expandNS(el);
  99.   } else if(DOM) {
  100.     expandDOM(el);
  101.   }
  102. }
  103.  
  104. function expandIE(el) {
  105.   whichEl = eval(el + "Child");
  106.  
  107.         // Modified Tobias Ratschiller 01-01-99:
  108.         // event.srcElement obviously only works when clicking directly
  109.         // on the image. Changed that to use the images's ID instead (so
  110.         // you've to provide a valid ID!).
  111.  
  112.   //whichIm = event.srcElement;
  113.         whichIm = eval(el+"Img");
  114.  
  115.   if (whichEl.style.display == "none") {
  116.     whichEl.style.display = "block";
  117.     whichIm.src = "images/minus.gif";
  118.   }
  119.   else {
  120.     whichEl.style.display = "none";
  121.     whichIm.src = "images/plus.gif";
  122.   }
  123.     window.event.cancelBubble = true ;
  124. }
  125.  
  126. function expandNS(el) {
  127.   whichEl = eval("document." + el + "Child");
  128.   whichIm = eval("document." + el + "Parent.document.images['imEx']");
  129.   if (whichEl.visibility == "hide") {
  130.     whichEl.visibility = "show";
  131.     whichIm.src = "images/minus.gif";
  132.   }
  133.   else {
  134.     whichEl.visibility = "hide";
  135.     whichIm.src = "images/plus.gif";
  136.   }
  137.   arrange();
  138. }
  139.  
  140. function expandDOM(el) {
  141.  
  142.   whichEl = document.getElementById(el + "Child");
  143.     whichIm = document.getElementById(el + "Img");
  144.  
  145.   if (whichEl.style.visibility != "visible") {
  146.     whichEl.style.visibility = "visible";
  147.     whichIm.src = "images/minus.gif";
  148.   } else {
  149.     whichEl.style.visibility = "hidden";
  150.     whichIm.src = "images/plus.gif";
  151.   }
  152.  
  153. }
  154.  
  155. function showAll() {
  156.   for (i=firstInd; i<document.layers.length; i++) {
  157.     whichEl = document.layers[i];
  158.     whichEl.visibility = "show";
  159.   }
  160. }
  161.  
  162. function expandAll(isBot) {
  163.   // Brian Birtles 7-Jun-00 : This fn might be unnecessary (for phpMyAdmin).
  164.   // My changes are certainly untested.
  165.   newSrc = (isExpanded) ? "images/plus.gif" : "images/minus.gif";
  166.  
  167.   if (NS4) {
  168.         // TR-02-01-99: Don't need that
  169.         // document.images["imEx"].src = newSrc;
  170.     for (i=firstInd; i<document.layers.length; i++) {
  171.       whichEl = document.layers[i];
  172.       if (whichEl.id.indexOf("Parent") != -1) {
  173.         whichEl.document.images["imEx"].src = newSrc;
  174.       }
  175.       if (whichEl.id.indexOf("Child") != -1) {
  176.         whichEl.visibility = (isExpanded) ? "hide" : "show";
  177.       }
  178.     }
  179.  
  180.     arrange();
  181.    if (isBot && isExpanded) scrollTo(0,document.layers[firstInd].pageY);
  182.   } else if(IE4) {
  183.     divColl = document.all.tags("DIV");
  184.     for (i=0; i<divColl.length; i++) {
  185.       if (divColl(i).className == "child") {
  186.         divColl(i).style.display = (isExpanded) ? "none" : "block";
  187.       }
  188.     }
  189.     imColl = document.images.item("imEx");
  190.     for (i=0; i<imColl.length; i++) {
  191.       imColl(i).src = newSrc;
  192.     }
  193.   } else if(DOM) {
  194.     divColl = document.getElementsByTagName("DIV");
  195.     for (i=0; i<divColl.length; i++) {
  196.       if (divColl(i).className == "child") {
  197.         divColl(i).style.visibility = (isExpanded) ? "hidden" : "visible";
  198.       }
  199.     }
  200.     imColl = document.getElementsByName("imEx");
  201.     for (i=0; i<imColl.length; i++) {
  202.       imColl(i).src = newSrc;
  203.     }
  204.   }
  205.  
  206.   isExpanded = !isExpanded;
  207. }
  208.  
  209. with (document) {
  210.   if(DOM) {
  211.     // Brian Birtles : This is not the ideal method of doing this
  212.     // but under the 7th June '00 Mozilla build (and many before
  213.     // it) Mozilla did not treat text between <style> tags as
  214.     // style information unless it was written with the one call
  215.     // to write().
  216.     var lstyle = "<style type='text/css'>";
  217.     lstyle += ".child {font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000; text-decoration:none; visibility:hidden}";
  218.     lstyle += ".parent {font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000; text-decoration:none;}";
  219.     lstyle += ".item { color: darkblue; text-decoration:none; font-size: 8pt;}";
  220.     lstyle += ".highlight { color: red; font-size: 8pt;}";
  221.     lstyle += ".heada { font: 12px/13px; Times}";
  222.     lstyle += "DIV { color:black; }";
  223.     lstyle += "</style>";
  224.     write(lstyle);
  225.   } else {
  226.     write("<style type='text/css'>");
  227.     if (NS4) {
  228.             write(".parent {font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000; text-decoration:none; position:absolute; visibility:hidden; color: black;}");
  229.             write(".child {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt;color: #000000; position:absolute; visibility:hidden}");
  230.             write(".item { color: darkblue; text-decoration:none;}");
  231.             write(".regular {font-family: Arial,Helvetica,sans-serif; position:absolute; visibility:hidden}");
  232.             write("DIV { color:black; }");
  233.     } else if(IE4) {
  234.             write(".child {font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000; text-decoration:none; display:none}");
  235.             write(".parent {font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000; text-decoration:none;}");
  236.             write(".item { color: darkblue; text-decoration:none; font-size: 8pt;}");
  237.             write(".highlight { color: red; font-size: 8pt;}");
  238.             write(".heada { font: 12px/13px; Times}");
  239.             write("DIV { color:black; }");
  240.     }
  241.     write("</style>");
  242.   }
  243. }
  244.  
  245. onload = initIt;
  246.  
  247. //-->
  248. </script>
  249. <base target="phpmain">
  250. <style type="text/css">
  251. //<!--
  252. body {  font-family: Arial, Helvetica, sans-serif; font-size: 10pt}
  253. //-->
  254. </style>
  255.  
  256. </head>
  257.  
  258. <body bgcolor="#D0DCE0">
  259.  <DIV ID="el1Parent" CLASS="parent">
  260.       <A class="item" HREF="main.php?server=<?php echo $server; ?>">
  261.       <FONT color="black" class="heada">
  262.       <?php echo $strHome;?>   </FONT></A>
  263.       </DIV>
  264. <?php
  265. // Don't display database info if $server==0 (no server selected)
  266. // This is the case when there are multiple servers and
  267. // '$cfgServerDefault = 0' is set.  In that case, we want the welcome
  268. // to appear with no database info displayed.
  269. if($server > 0)
  270. {
  271.     if(empty($dblist))
  272.     {
  273.         $dbs = mysql_list_dbs();
  274.         $num_dbs = mysql_numrows($dbs);
  275.     }
  276.     else
  277.     {
  278.         $num_dbs = count($dblist);
  279.     }
  280.  
  281.     for($i=0; $i<$num_dbs; $i++)
  282.     {
  283.         if (empty($dblist))
  284.             $db = mysql_dbname($dbs, $i);
  285.         else
  286.             $db = $dblist[$i];
  287.     $j = $i + 2;
  288.     ?>
  289.       <div ID="el<?php echo $j;?>Parent" CLASS="parent">
  290.       <a class="item" HREF="db_details.php?server=<?php echo $server;?>&db=<?php echo $db;?>" onClick="expandIt('el<?php echo $j;?>'); return false;">
  291.       <img NAME="imEx" SRC="images/plus.gif" BORDER="0" ALT="+" width="9" height="9" ID="el<?php echo $j;?>Img"></a>
  292.       <a class="item" HREF="db_details.php?server=<?php echo $server;?>&db=<?php echo $db;?>" onClick="expandIt('el<?php echo $j;?>');">
  293.       <font color="black" class="heada">
  294.     <?php echo $db;?>
  295.       </font></a>
  296.       </div>
  297.       <div ID="el<?php echo $j;?>Child" CLASS="child">
  298.     <?php
  299.     $tables = mysql_list_tables($db);
  300.     $num_tables = @mysql_numrows($tables);
  301.  
  302.     for($j=0; $j<$num_tables; $j++)
  303.     {
  304.         $table = mysql_tablename($tables, $j);
  305.         ?>
  306.             <nobr>    <a target="phpmain" href="sql.php?server=<?php echo $server;?>&db=<?php echo $db;?>&table=<?php echo urlencode($table);?>&sql_query=<?php echo urlencode("SELECT * FROM $table");?>&pos=0&goto=tbl_properties.php"><img src="images/browse.gif" border="0" alt="<?php echo $strBrowse.": ".$table;?>"></a> <a class="item" target="phpmain" HREF="tbl_properties.php?server=<?php echo $server;?>&db=<?php echo $db;?>&table=<?php echo urlencode($table);?>"><?php echo $table;?></a></nobr><br>
  307.         <?php
  308.     }
  309.  
  310.         echo "</div>\n";
  311. }
  312.     ?>
  313.     <script LANGUAGE="JavaScript1.2">
  314.     <!--
  315.     if (NS4) {
  316.       firstEl = "el1Parent";
  317.       firstInd = getIndex(firstEl);
  318.       showAll();
  319.       arrange();
  320.     }
  321.     //-->
  322.     </script>
  323.     <?php
  324. }
  325. ?>
  326. </body>
  327. </html>